Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Overview: allow custom range opacity, improve mark rendering #3003

Merged
merged 6 commits into from
Aug 21, 2020

Conversation

ronso0
Copy link
Member

@ronso0 ronso0 commented Aug 6, 2020

https://bugs.launchpad.net/mixxx/+bug/1842338
Zulip: Improve visibility of loops on overview waveforms

Before, marker contrast borders looked like double strokes when color.isDimColor() which made them appear like a tiny ranges. Due to rounding issue it was also not drawn consistently: sometime it's a single stroke at one side, sometimes it's a double stroke.

  • allow custom opacities for disabled & enabled mark ranges, allows more appearance control in conjunction with different range colors 427f3f8: <MarkRange> accepts nodes <Opacity> and <DisabledOpacity>, both default to 0.5 (0.4 and 0.2 before)
  • improve mark rendering: Before, marker contrast borders looked like double strokes when color.isDimColor() which made them appear like a tiny ranges. Due to rounding issue it was also not drawn consistently: sometime it's a single stroke at one side, sometimes it's a double stroke.
  • move drawing of playedOverlay & playPosition to separate functions
  • add skin changes
  • test & adjust opacity values

before: Note that 2, 3, 6 & 8 are all hotcues with the same color
image
this PR:
image

  • draw mark ranges behind waveform ?
    ranges render may-be relevant parts of waveform unreadable
    ranges stand out to much over played part of the overview

@ronso0 ronso0 added this to the 2.3.0 milestone Aug 6, 2020
@ronso0 ronso0 added the skins label Aug 6, 2020
@Holzhaus
Copy link
Member

Holzhaus commented Aug 6, 2020

Is hotcue 8 a saved loop?

@ronso0
Copy link
Member Author

ronso0 commented Aug 6, 2020

Nope, it's just a ↻ loop_in at exactly 8, though we could use that ↻ icon for saved loops.
loop_in (without an icon) would be invisble otherwise.
still experimenting with

  • draw mark ranges behind waveform ?

@Holzhaus
Copy link
Member

Holzhaus commented Aug 6, 2020

For saved loops I experimented with a half-transparent gradient for disabled saved loops, maybe you want to check that out over at #2194.

@ronso0 ronso0 force-pushed the overview-loop-visibility branch from 73c282f to c084c4f Compare August 7, 2020 16:23
@ronso0 ronso0 marked this pull request as ready for review August 7, 2020 16:59
@ronso0
Copy link
Member Author

ronso0 commented Aug 7, 2020

For saved loops I experimented with a half-transparent gradient for disabled saved loops, maybe you want to check that out over at #2194.

I see this only affects the scrolling waveforms. Also, once the loop display switched from a plain translucent overlay to a gradient.

In the overview there' little space (horizontally on small screens, vertically in mini decks) and to improve visibility I think we can play with the opacity and the stacking order first, before introducing gradients.

@ronso0
Copy link
Member Author

ronso0 commented Aug 7, 2020

This is ready to test with LateNight. Colors are adjusted for PaleMoon only.
Loop_in has an icon now, please test that @Be-ing

@ronso0 ronso0 mentioned this pull request Aug 7, 2020
20 tasks
ronso0 added 4 commits August 7, 2020 23:37
Before, the mark border was drawn inconsistently, it was either a
border on the left or on both sides. With bright contrast lines this
made the marker look like a tiny mark range which was confusing.
@ronso0 ronso0 force-pushed the overview-loop-visibility branch from 0a03016 to d0d7dfc Compare August 7, 2020 21:41
@ronso0
Copy link
Member Author

ronso0 commented Aug 7, 2020

@Be-ing @daschuer Please test if the range opacities in Deere & Shade work for you.
If you suggest different values please post a screenshot as wel so we can compare the visuals. Thanks!

@ronso0
Copy link
Member Author

ronso0 commented Aug 7, 2020

We can also discuss if/how to syncronize the range display n all skins.
In LateNight I've hidden the overview loop_out marker unless the loop is enabled.
IIRC in Deere and Shade there are no overview loop markers, only ranges. We should add marks as well so we can jump to it like to hotcues in all skins.

@ronso0
Copy link
Member Author

ronso0 commented Aug 10, 2020

Any comments on this, and on the loop_out proposal above?

Copy link
Member

@Holzhaus Holzhaus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thank you!

@Holzhaus Holzhaus merged commit 522b4b9 into mixxxdj:2.3 Aug 21, 2020
@Holzhaus
Copy link
Member

We can also discuss if/how to syncronize the range display n all skins.
In LateNight I've hidden the overview loop_out marker unless the loop is enabled.
IIRC in Deere and Shade there are no overview loop markers, only ranges. We should add marks as well so we can jump to it like to hotcues in all skins.

Hmm, I think it looks good in LateNight. If nobody disagrees we could also apply this to other skins.

@ronso0 ronso0 deleted the overview-loop-visibility branch August 25, 2020 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants